// -----------------------------------------------------------------------------
// Generate By Furion Tools v1.6.0                            
// -----------------------------------------------------------------------------

using Furion.DatabaseAccessor;
using Microsoft.EntityFrameworkCore;
using Microsoft.EntityFrameworkCore.Metadata.Builders;
using System;
using System.Collections.Generic;

#nullable disable

namespace iemtm.WeChat.Core
{
    public partial class annListBack : IEntity<MasterDbContextLocator>, IEntityTypeBuilder<annListBack, MasterDbContextLocator>
    {

        public int AnnounceId { get; set; }
        public string AnnounceCode { get; set; }
        public string AreaCode { get; set; }
        public string AreaName { get; set; }
        public int? BaseStationID { get; set; }
        public string BaseStationCode { get; set; }
        public string BaseStation { get; set; }
        public string BaseStationType { get; set; }
        public string BaseStationLevel { get; set; }
        public string LAC { get; set; }
        public string CellID { get; set; }
        public string GenAnnouceDepartment { get; set; }
        public string AnnouncePerson { get; set; }
        public string AnnouncePersonPhone { get; set; }
        public string GenDepartment { get; set; }
        public string GenManagePerson { get; set; }
        public string GenManagePersonPhone { get; set; }
        public DateTime? ExecutionDate { get; set; }
        public int? AnnounceStatus { get; set; }
        public decimal? TrafficFee { get; set; }
        public decimal? EmployeeFee { get; set; }
        public decimal? OtherFee { get; set; }
        public decimal? RunningPeriod { get; set; }
        public decimal? KWpower { get; set; }
        public decimal? GenFee { get; set; }
        public decimal? GenFeeByHour { get; set; }
        public decimal? GunWastageFee { get; set; }
        public int? GenRunTimes { get; set; }
        public string GenImg1 { get; set; }
        public string GenImg2 { get; set; }
        public string ManualReason { get; set; }
        public DateTime? CreateDate { get; set; }
        public string Remark { get; set; }
        public string AuditRemark { get; set; }
        public string PrjCode { get; set; }
        public string PrjName { get; set; }
        public string JobNumber { get; set; }
        public DateTime? RecoverDate { get; set; }
        public string GenReason { get; set; }
        public string PowEveName { get; set; }
        public string Genset1 { get; set; }
        public string Genset2 { get; set; }
        public string Genset3 { get; set; }
        public string AcceptPersonCode { get; set; }
        public string AcceptPersonName { get; set; }
        public string RegisteredGenset { get; set; }
        public bool? RegisteredAbnormal { get; set; }
        public string RegisteredImg { get; set; }
        public int? FinishType { get; set; }
        public DateTime? FinishTime { get; set; }
        public string FinishRemak { get; set; }
        public string GenerationFor { get; set; }
        public int? MigrationId { get; set; }
        public string AnnounceCompanyCode { get; set; }
        public string AnnounceCompanyName { get; set; }
        public string AcceptCompanyCode { get; set; }
        public string AcceptCompanyName { get; set; }
        public DateTime? AcceptTime { get; set; }
        public DateTime? RegisteredTime { get; set; }
        public string AlarmOccTime { get; set; }
        public string GenTimeliness { get; set; }
    
        public void Configure(EntityTypeBuilder<annListBack> entityBuilder, DbContext dbContext, Type dbContextLocator)
        {
                entityBuilder.HasNoKey();

                entityBuilder.Property(e => e.AcceptCompanyCode).HasMaxLength(50);

                entityBuilder.Property(e => e.AcceptCompanyName).HasMaxLength(50);

                entityBuilder.Property(e => e.AcceptPersonCode).HasMaxLength(50);

                entityBuilder.Property(e => e.AcceptPersonName).HasMaxLength(50);

                entityBuilder.Property(e => e.AcceptTime).HasColumnType("datetime");

                entityBuilder.Property(e => e.AlarmOccTime).HasMaxLength(100);

                entityBuilder.Property(e => e.AnnounceCode)
                    .IsRequired()
                    .HasMaxLength(50);

                entityBuilder.Property(e => e.AnnounceCompanyCode).HasMaxLength(50);

                entityBuilder.Property(e => e.AnnounceCompanyName).HasMaxLength(50);

                entityBuilder.Property(e => e.AnnounceId).ValueGeneratedOnAdd();

                entityBuilder.Property(e => e.AnnouncePerson).HasMaxLength(20);

                entityBuilder.Property(e => e.AnnouncePersonPhone).HasMaxLength(20);

                entityBuilder.Property(e => e.AreaCode).HasMaxLength(50);

                entityBuilder.Property(e => e.AreaName).HasMaxLength(50);

                entityBuilder.Property(e => e.AuditRemark).HasMaxLength(1000);

                entityBuilder.Property(e => e.BaseStation).HasMaxLength(50);

                entityBuilder.Property(e => e.BaseStationCode).HasMaxLength(100);

                entityBuilder.Property(e => e.BaseStationLevel).HasMaxLength(20);

                entityBuilder.Property(e => e.BaseStationType).HasMaxLength(20);

                entityBuilder.Property(e => e.CellID).HasMaxLength(20);

                entityBuilder.Property(e => e.CreateDate).HasColumnType("datetime");

                entityBuilder.Property(e => e.EmployeeFee).HasColumnType("decimal(18, 2)");

                entityBuilder.Property(e => e.ExecutionDate).HasColumnType("datetime");

                entityBuilder.Property(e => e.FinishRemak).HasMaxLength(500);

                entityBuilder.Property(e => e.FinishTime).HasColumnType("datetime");

                entityBuilder.Property(e => e.GenAnnouceDepartment).HasMaxLength(50);

                entityBuilder.Property(e => e.GenDepartment).HasMaxLength(1000);

                entityBuilder.Property(e => e.GenFee).HasColumnType("decimal(18, 2)");

                entityBuilder.Property(e => e.GenFeeByHour).HasColumnType("decimal(18, 2)");

                entityBuilder.Property(e => e.GenManagePerson).HasMaxLength(20);

                entityBuilder.Property(e => e.GenManagePersonPhone).HasMaxLength(20);

                entityBuilder.Property(e => e.GenReason).HasMaxLength(100);

                entityBuilder.Property(e => e.GenTimeliness).HasMaxLength(50);

                entityBuilder.Property(e => e.GenerationFor).HasMaxLength(50);

                entityBuilder.Property(e => e.Genset1).HasMaxLength(100);

                entityBuilder.Property(e => e.Genset2).HasMaxLength(100);

                entityBuilder.Property(e => e.Genset3).HasMaxLength(100);

                entityBuilder.Property(e => e.GunWastageFee).HasColumnType("decimal(18, 2)");

                entityBuilder.Property(e => e.JobNumber).HasMaxLength(100);

                entityBuilder.Property(e => e.KWpower).HasColumnType("decimal(18, 3)");

                entityBuilder.Property(e => e.LAC).HasMaxLength(20);

                entityBuilder.Property(e => e.ManualReason).HasMaxLength(50);

                entityBuilder.Property(e => e.OtherFee).HasColumnType("decimal(18, 2)");

                entityBuilder.Property(e => e.PowEveName).HasMaxLength(200);

                entityBuilder.Property(e => e.PrjCode).HasMaxLength(100);

                entityBuilder.Property(e => e.PrjName).HasMaxLength(100);

                entityBuilder.Property(e => e.RecoverDate).HasColumnType("datetime");

                entityBuilder.Property(e => e.RegisteredGenset).HasMaxLength(50);

                entityBuilder.Property(e => e.RegisteredTime).HasColumnType("datetime");

                entityBuilder.Property(e => e.Remark).HasMaxLength(1000);

                entityBuilder.Property(e => e.RunningPeriod).HasColumnType("decimal(18, 4)");

                entityBuilder.Property(e => e.TrafficFee).HasColumnType("decimal(18, 2)");
        }

    }
}

